package org.way.rocketMq.service;

import lombok.extern.slf4j.Slf4j;
import org.apache.rocketmq.spring.annotation.RocketMQMessageListener;
import org.apache.rocketmq.spring.core.RocketMQListener;
import org.springframework.stereotype.Component;
import org.way.rocketMq.dto.MessageDto;

/**
 * topic需要和生产者的topic一致，consumerGroup属性是必须指定的，内容可以随意
 * selectorExpression的意思指的就是tag，默认为“*”，不设置的话会监听所有消息
 */
@Slf4j
@Component
@RocketMQMessageListener(topic = "${rocketmq.topic}", consumerGroup = "${rocketmq.group}")
public class MqConsumerService implements RocketMQListener<MessageDto> {

    /**
     * 不要捕获异常信息，否则无法进行消息重新推送
     */
    @Override
    public void onMessage(MessageDto messageDto) {
        log.info("监听到消息:{}", messageDto.toString());
    }

}
